From dd738d27872706ec758a97bc481ad4e26b9c32b3 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jonas=20=C3=85dahl?= Date: Mon, 23 Nov 2020 17:23:44 +0100 Subject: [PATCH] surface: Only keep state 'withdrawn' after hiding A hidden surface should start from a clean slate when showing again, so clear any now out of date state. --- gdk/gdksurface.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gdk/gdksurface.c b/gdk/gdksurface.c index a64cbb0f94..25e6f12b27 100644 --- a/gdk/gdksurface.c +++ b/gdk/gdksurface.c @@ -1671,7 +1671,9 @@ gdk_surface_hide (GdkSurface *surface) if (GDK_SURFACE_IS_MAPPED (surface)) { - gdk_synthesize_surface_state (surface, 0, GDK_TOPLEVEL_STATE_WITHDRAWN); + gdk_synthesize_surface_state (surface, + surface->state & ~GDK_TOPLEVEL_STATE_WITHDRAWN, + GDK_TOPLEVEL_STATE_WITHDRAWN); surface->pending_unset_flags = 0; surface->pending_set_flags = 0; } -- 2.30.2